package com.github.novicezk.midjourney.service;


import com.github.novicezk.midjourney.ProxyProperties;
import com.github.novicezk.midjourney.result.Message;
import eu.maxschuster.dataurl.DataUrl;

public interface DiscordService {

	Message<Void> imagine(String prompt, ProxyProperties.DiscordConfig discordConfig);

	Message<Void> upscale(String messageId, int index, String messageHash, ProxyProperties.DiscordConfig discordConfig);

	Message<Void> variation(String messageId, int index, String messageHash, ProxyProperties.DiscordConfig discordConfig);

	Message<Void> reset(String messageId, String messageHash, ProxyProperties.DiscordConfig discordConfig);

	Message<String> upload(String fileName, DataUrl dataUrl, ProxyProperties.DiscordConfig discordConfig);

	Message<String> uploadForUrl(String fileName, DataUrl dataUrl, ProxyProperties.DiscordConfig discordConfig);

	Message<Void> describe(String finalFileName, ProxyProperties.DiscordConfig discordConfig);

}
